<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui"
	xmlns:sec="http://www.springframework.org/security/facelets/tags">

<h:body>
	<ui:composition template="/templates/templateCRUD.xhtml">
		<ui:param name="tituloCadastro"
			value="Cadastro de Convênios do Médico" />
		<ui:param name="tituloPesquisa"
			value="Pesquisa de Convênios do Médico" />
		<ui:param name="tituloGrid" value="Lista de Convênios do Médico" />
		<ui:param name="mbean" value="${medicoConvenioMB}" />
		<ui:define name="cadastro">

			<p:panel>
				<h:panelGrid columns="3"
					columnClasses="coluna-esquerda, coluna-esquerda, coluna-direita, coluna-direita">
					<h:outputText value="Médico (*): " />
					<p:selectOneMenu value="#{mbean.bean.medico}"
						disabled="#{mbean.readOnly}" label="Médico" required="true">
						<f:selectItems value="#{mbean.medicos}" var="medico"
							itemLabel="#{medico.funcionario.usuario.nome}"
							id="medicoCadastro" />
						<f:converter converterId="medicoConverter" />
					</p:selectOneMenu>
					<p:message for="medicoCadastro" showDetail="true"
						showSummary="true" />

					<h:outputText value="Convênio: " />
					<p:selectOneMenu value="#{mbean.bean.convenioEmpresa}"
						disabled="#{mbean.readOnly}" label="Convenio" required="true"
						converter="convenioEmpresaConverter" id="convenioCadastro">
						<f:selectItems value="#{mbean.convenioEmpresas}"
							var="convenioEmpresa"
							itemLabel="#{convenioEmpresa.convenio.nome}" />
					</p:selectOneMenu>
					<p:message for="convenioCadastro" showDetail="true"
						showSummary="true" />

					<h:outputText value="Observação: " />
					<p:inputTextarea value="#{mbean.bean.observacao}"
						disabled="#{mbean.readOnly}" cols="54" rows="5" required="false"
						label="Observação" id="observacaoCadastro" />
					<p:message for="observacaoCadastro" showDetail="true"
						showSummary="true" />

					<p:commandButton type="button" value="Selecionar Dia da Semana"
						onclick="dlg.show()" />
				</h:panelGrid>


				<p:panel header="Cadastrados">
					<p:dataTable var="registro"
						value="#{mbean.bean.diasAtendimentoConvenio}" emptyMessage=""
						id="gridDiaAtendimento">
						<p:column>
							<f:facet name="header">
								<h:outputText value="Dia Semana" />
							</f:facet>
							<h:outputText value="#{registro.diaSemana}" />
						</p:column>
						<p:column>
							<f:facet name="header">
								<h:outputText value="Quantidade Paciente" />
							</f:facet>
							<h:outputText value="#{registro.quantidadePacientes}" />
						</p:column>
						<p:column style="width:32px">
							<p:commandButton icon="ui-icon-trash"
								action="#{mbean.excluirDiaAtendimentoConvenio(registro)}"
								disabled="#{mbean.readOnly}" immediate="true"
								oncomplete="atualizarGrid();" />
						</p:column>
					</p:dataTable>
				</p:panel>
				<p:remoteCommand update="gridDiaAtendimento" name="atualizarGrid" />

				<p:dialog header="Dias Semana" widgetVar="dlg" resizable="false">
					<h:panelGrid columns="5" style="margin-bottom:10px">
						<h:outputText value="Dia Semana (*): " />
						<p:selectOneMenu value="#{mbean.diaAtendimentoConvenio.diaSemana}"
							disabled="#{mbean.readOnly}" label="Dia Semana" required="true"
							id="diaSemana">
							<f:selectItems value="#{mbean.diasSemana}" var="diaSemana"
								itemLabel="#{diaSemana.nome}" />
						</p:selectOneMenu>

						<h:outputText value="Quantidade Pacientes (*): " />
						<p:spinner id="quantidadePacientes" label="QuantidadePacientes"
							value="#{mbean.diaAtendimentoConvenio.quantidadePacientes}" />

						<p:commandButton value="Adicionar"
							actionListener="#{mbean.adicionarDiaAtendimentoConvenio}"
							update="gridDiaAtendimento" disabled="#{mbean.readOnly}"
							immediate="false" process="@this, diaSemana,quantidadePacientes"
							onsuccess="dlg.hide()" />
					</h:panelGrid>
				</p:dialog>
			</p:panel>
		</ui:define>

		<ui:define name="pesquisa">
			<h:panelGrid columns="2" cellpadding="4">
				<h:outputText value="Médico: " />
				<p:selectOneMenu value="#{mbean.beanSearch.medico}">
					<sec:ifAllGranted roles="ROLE_ADMIN">
						<f:selectItem itemLabel="#{msg.opcaoSelecionarCombo}"
							itemValue="#{null}" />
					</sec:ifAllGranted>
					<f:selectItems value="#{mbean.medicos}" var="medico"
						itemLabel="#{medico.funcionario.usuario.nome}" />
					<f:converter converterId="medicoConverter" />
				</p:selectOneMenu>
			</h:panelGrid>
		</ui:define>

		<ui:define name="gridPesquisa">
			<p:column>
				<f:facet name="header">
					<h:outputText value="Médico" />
				</f:facet>
				<h:outputText value="#{registro.medico.funcionario.usuario.nome}" />
			</p:column>
			<p:column>
				<f:facet name="header">
					<h:outputText value="Nome" />
				</f:facet>
				<h:outputText value="#{registro.convenioEmpresa.convenio.nome}" />
			</p:column>
			<p:column>
				<f:facet name="header">
					<h:outputText value="Observação" />
				</f:facet>
				<h:outputText value="#{registro.observacao}" />
			</p:column>
		</ui:define>

	</ui:composition>
</h:body>
</html>
